#include "widget.h"
#include "ui_widget.h"
#include <QDebug>


Widget::Widget(QWidget *parent)
    : QWidget(parent)
    , ui(new Ui::Widget)
{
    ui->setupUi(this);
//    // 纯文本
//    ui->label->setTextFormat(Qt::PlainText);
//    ui->label->setText("这是一段纯文本");

//    // 富文本
//    ui->label_2->setTextFormat(Qt::RichText);
////    ui->label_2->setText("这是一段富文本");
//    // 富文本可以使用html标签的的语法来设置文本的格式
//    // 就例如“加粗”
//    ui->label_2->setText("<b>这是一段富文本</b>");

//    // markdown文本
//    ui->label_3->setTextFormat(Qt::MarkdownText);
////    ui->label_3->setText("这是一段markdown文本");
//    // 当然，markdown也可以使用markdown的语法
//    // 就例如设置标题的语法#
//    ui->label_3->setText("# 这是一段 markdown 文本"); // (以及语法)


    // 使用QLabel来显示图片
    // 效果，让整个QLabel铺满整个窗口
    // 想把QLabel设置的和窗口一样大。
    // 再将QLabel的左上角设置的和窗口的左上角一样
    // 先获取窗口的大小
    QRect windowRect = this->geometry();
    // 设置标签的位置和大小
    ui->label->setGeometry(0, 0, windowRect.width(), windowRect.height());

    ui->label->setPixmap(QPixmap(":/jietu.png"));
    // 但是这样设置只是让图片具有能铺满整个窗口的能力，但是否能真正铺满还是要看图片的大小，如果图片的大小小于窗口的大小，也还是铺不满，必须要图片的大小大于等于窗口的大小

    // 而如果图片不够大，还想让其铺满，就可以使用图片自动拉伸功能
    ui->label->setScaledContents(true);

    // 但是上面的初始化标签大小只是初始化一次的，如果后来改变窗口大小，标签的大小也不会改变，即图片的大小也不会改变

    // 如果想要让图片随着窗口的大小而改变
    // 则需要用到“事件触发"




}

Widget::~Widget()
{
    delete ui;
}
// 此处的形参event是非常有用的，它包含了很多触发事件当时窗口的很多实时属性
void Widget::resizeEvent(QResizeEvent *event)
{
    // 每次触发resize事件，都会调用这个函数
    qDebug() << event->size();
    ui->label->setGeometry(0, 0, event->size().width(), event->size().height());

}

